HAL RCC PLL functions migration ¶
This section provides information about the HAL RCC PLL functions migration.
HAL RCCEx get PLL clock frequency ¶
Function Description ¶
In HAL2, all APIs to retrieve the output PLLx clock frequency are renamed.
|
HAL1 |
HAL2 |
|
|---|---|---|
|
Function name |
void HAL_RCCEx_GetPLL1ClockFreq(PLL1_ClocksTypeDef *PLL1_Clocks); |
void HAL_RCC_PLL1_GetClockFreq(hal_rcc_pll_output_freq_t *p_clk); |
|
void HAL_RCCEx_GetPLL2ClockFreq(PLL2_ClocksTypeDef *PLL2_Clocks); |
void HAL_RCC_PLL2_GetClockFreq(hal_rcc_pll_output_freq_t *p_clk); |
|
|
void HAL_RCCEx_GetPLL3ClockFreq(PLL3_ClocksTypeDef *PLL3_Clocks); |
void HAL_RCC_PLL3_GetClockFreq(hal_rcc_pll_output_freq_t *p_clk); |
Example Usage ¶
|
HAL1 |
HAL2 |
|---|---|
PLL1_ClocksTypeDef pll1_clocks;
PLL2_ClocksTypeDef pll2_clocks;
PLL3_ClocksTypeDef pll3_clocks;
HAL_RCCEx_GetPLL1ClockFreq(&pll1_clocks);
HAL_RCCEx_GetPLL2ClockFreq(&pll2_clocks);
HAL_RCCEx_GetPLL3ClockFreq(&pll3_clocks);
|
hal_rcc_pll_output_freq_t pll1_clk;
hal_rcc_pll_output_freq_t pll2_clk;
hal_rcc_pll_output_freq_t pll3_clk;
HAL_RCC_PLL1_GetClockFreq(&pll1_clk);
HAL_RCC_PLL2_GetClockFreq(&pll2_clk);
HAL_RCC_PLL3_GetClockFreq(&pll3_clk);
|
HAL RCCEx enable PLL2 ¶
Function Description ¶
In HAL2, all APIs to enable, disable, and configure PLL2 are renamed and restructured.
|
HAL1 |
HAL2 |
|
|---|---|---|
|
Function name |
HAL_StatusTypeDef HAL_RCCEx_EnablePLL2(const RCC_PLL2InitTypeDef *PLL2Init); |
hal_status_t HAL_RCC_PLL2_SetConfig(const hal_rcc_pll_config_t *p_config); hal_status_t HAL_RCC_PLL2_EnableOutput(uint32_t output); hal_status_t HAL_RCC_PLL2_Enable(void); |
|
HAL_StatusTypeDef HAL_RCCEx_DisablePLL2(void); |
hal_status_t HAL_RCC_PLL2_Disable(void); |
Example Usage ¶
|
HAL1 |
HAL2 |
|---|---|
RCC_PLL2InitTypeDef pll2_init;
pll2_init.PLL2Source = RCC_PLLSOURCE_MSI;
pll2_init.PLL2M = 1;
pll2_init.PLL2N = 43;
pll2_init.PLL2P = 7;
pll2_init.PLL2Q = 2;
pll2_init.PLL2R = 2;
pll2_init.PLL2RGE = RCC_PLLVCIRANGE_1;
pll2_init.PLL2FRACN = 0;
pll2_init.PLL2ClockOut = RCC_PLL2_DIVP | RCC_PLL2_DIVQ | RCC_PLL2_DIVR;
HAL_RCCEx_EnablePLL2(&pll2_init);
|
HAL_RCC_MSI_Enable(HAL_RCC_MSIS_FREQ_4MHZ);
hal_rcc_pll_config_t config_pll;
config_pll.pll_source = HAL_RCC_PLL_SRC_MSIS;
config_pll.pll_m = 1;
config_pll.pll_n = 43;
config_pll.pll_p = 7;
config_pll.pll_q = 2;
config_pll.pll_r = 2;
config_pll.pll_fracn = 0;
HAL_RCC_PLL2_SetConfig(&config_pll);
HAL_RCC_PLL2_Enable();
HAL_RCC_PLL2_EnableOutput(HAL_RCC_PLL2_OUTPUT_P
| HAL_RCC_PLL2_OUTPUT_Q | HAL_RCC_PLL2_OUTPUT_R);
|
HAL RCCEx enable PLL3 ¶
Function Description ¶
In HAL2, all APIs to enable, disable, and configure PLL3 are renamed and restructured.
|
HAL1 |
HAL2 |
|
|---|---|---|
|
Function name |
HAL_StatusTypeDef HAL_RCCEx_EnablePLL3(const RCC_PLL3InitTypeDef *PLL3Init); |
hal_status_t HAL_RCC_PLL3_SetConfig(const hal_rcc_pll_config_t *p_config); hal_status_t HAL_RCC_PLL3_EnableOutput(uint32_t output); hal_status_t HAL_RCC_PLL3_Enable(void); |
|
HAL_StatusTypeDef HAL_RCCEx_DisablePLL3(void); |
hal_status_t HAL_RCC_PLL3_Disable(void); |
Example Usage ¶
|
HAL1 |
HAL2 |
|---|---|
RCC_PLL3InitTypeDef pll3_init;
pll3_init.PLL3Source = RCC_PLLSOURCE_MSI;
pll3_init.PLL3M = 1;
pll3_init.PLL3N = 43;
pll3_init.PLL3P = 7;
pll3_init.PLL3Q = 2;
pll3_init.PLL3R = 2;
pll3_init.PLL3RGE = RCC_PLLVCIRANGE_1;
pll3_init.PLL3FRACN = 0;
pll3_init.PLL3ClockOut = RCC_PLL3_DIVP | RCC_PLL3_DIVQ | RCC_PLL3_DIVR;
HAL_RCCEx_EnablePLL3(&pll3_init);
|
HAL_RCC_MSI_Enable(HAL_RCC_MSIS_FREQ_4MHZ);
hal_rcc_pll_config_t config_pll;
config_pll.pll_source = HAL_RCC_PLL_SRC_MSIS;
config_pll.pll_m = 1;
config_pll.pll_n = 43;
config_pll.pll_p = 7;
config_pll.pll_q = 2;
config_pll.pll_r = 2;
config_pll.pll_fracn = 0;
HAL_RCC_PLL3_SetConfig(&config_pll);
HAL_RCC_PLL3_Enable();
HAL_RCC_PLL3_EnableOutput(HAL_RCC_PLL3_OUTPUT_P
| HAL_RCC_PLL3_OUTPUT_Q | HAL_RCC_PLL3_OUTPUT_R);
|